package net.atomarrow.util.excel;

import java.util.List;

import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.util.CellRangeAddress;

public interface ExcelDataInterface {
	/**
	 * 自适应行或列位置,会在当前最后行或列后自增
	 */
    int AUTO=-1;
	/**
	 * 与当前编辑的行或列相同
	 */
    int LAST=-2;
	/**
	 * 在当前行列基础上增减
	 */
    int BASE_LAST=-99999;
	
	/**
	 * 获得单元格内容
	 * @return
	 */
    List<CellData> getCellDatas(List<CellRangeAddress> region);
	/**
	 * 获得单元格内容
	 * @return
	 */
    List<CellData> getCellDatas(List<CellRangeAddress> regions, ExcelFormatListener format, ExcelDataChangeListener dataChanger);
	/**
	 * 获得结束的行
	 * @return
	 */
    int getEndRow();
	/**
	 * 获得结束的列
	 * @return
	 */
    int getEndColumn();
	/**
	 * 处理使用自动处理行列，根据LAST、AUTO等信息判断位置
	 * @param row
	 * @param column
	 */
    void ReplaceAuto(int row, int column);
	/**
	 * 得到Excel样式
	 * @return
	 */
    CellStyle getCellStyle() ;
	
	
}
